package cn.tutu.blockchain.fileInfo.dao;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import cn.tutu.blockchain.base.BaseDao;
import cn.tutu.blockchain.fileInfo.entity.FileInfo;
import cn.tutu.blockchain.filebak.entity.Filebak;

@Mapper
public interface FileInfoDao extends BaseDao<FileInfo> {

	/**
	 * 在FileInfo中找出备份次数不满足要求并且没有被矿机备份过的文件
	 * 
	 * @param minemachineId
	 *            矿机ID
	 * @param count
	 * @return
	 */
	List<FileInfo> findNeedBackByMacId(@Param("minemachineId") String minemachineId, @Param("count") Integer count);

	/**
	 * 
	 * @param minemachineId
	 * @return
	 */
	String findByMacIdAndType(@Param("minemachineId") String minemachineId, @Param("type") String type);

	/**
	 * 批量更新备份次数
	 * 
	 * @param bakList
	 */
	void updateBatch(List<FileInfo> bakList);

	/**
	 * 批量修改备份次数
	 * 
	 * @param bakList
	 */
	void updaeCountBatch(List<Filebak> bakList);

}
